<?php

namespace app\api\controller;

use app\common\controller\Api;
use EasyWeChat\Factory;
use think\Db;

use think\Config;
use think\Validate;//验证
use fast\Random;
use fast\Http;

use app\api\controller\Ltder;



/**
 * 公司房源🏚
 */
class Goods extends Ltder
{

    protected $noNeedLogin = ['help'];
    protected $noNeedRight = ['*'];

    protected $db = 'goods';

    public function _initialize()
    {
        parent::_initialize();

    }


    
    /**
     * 说明文档
     *
     * @return void
     */
    public function help()
    {
        $this->success('公司角色才可以调此接口');
    }



    /**
     * 添加新房🏛
     * 
     * @param string $name 房源名
     * @param string $contacts 联系人
     * @param string $images 房源信息图
     * @param string $lc 楼层
     * @param string $cx 朝向
     * @param string $house_type 户型/类型
     * @param string $size 房源面积
     * @param string $addr 具体地址
     * @param string $public_status 公开显示:1=是,2=否
     * @param string $zb_school 周边学校
     * @param string $zb_hospital 周边医院
     * @param string $zb_bus 周边公交
     * @param string $zb_sc 周边市场
     * @param string $tag_ids 标签id
     * @param string $ps 备注
     * @param string $province 省
     * @param string $city 市
     * @param string $district 区
     * @param string $price 价格
     * @param string $now_status 现房:1=现房,2=准现房,3=新房,
     * @param string $area 地区朝向
     * @return void
     */
    public function add_new_goods()
    {


        $params = $this->request->param();
        $fields = ['name',
                    'contacts',
                    'images',
                    'lc',
                    'cx',
                    'house_type',
                    'size',
                    'addr',
                    'public_status',
                    'now_status',//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
                    'zb_school',
                    'zb_hospital',
                    'zb_bus',
                    'zb_sc',
                    // '',
                    'tag_ids',
                    'ps',

                    'province',
                    'city',
                    'district',
                    'area',

                    'price'];



        $data = $this->get_field_arr($params,$fields,true);
        $data['uid'] = $this->auth->id;
        $data['ltd_id'] = $this->get_me_ltd_id();
        $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//
        $res = Db::name($this->db)->where($data)->find();
        if($res){
            $this->error('已提交过');
        }



      

        
        $data['time'] = time();
        // $data['status_switch'] = 0;
        $res = Db::name($this->db)->insertGetId($data);
        if($res){
            $this->success('添加成功');
        }
    }





    /**
     * 添加商铺房源🏛
     * 
     * @param string $name 房源名
     * @param string $contacts 联系人
     * @param string $images 房源信息图
     * @param string $lc 楼层
     * @param string $cx 朝向
     * @param string $house_type 户型/类型
     * @param string $size 房源面积
     * @param string $addr 具体地址
     * @param string $public_status 公开显示:1=是,2=否
     * @param string $zb_school 周边学校
     * @param string $zb_hospital 周边医院
     * @param string $zb_bus 周边公交
     * @param string $zb_sc 周边市场
     * @param string $tag_ids 标签id
     * @param string $ps 备注
     * @param string $province 省
     * @param string $city 市
     * @param string $district 区
     * @param string $price 价格
     * @param string $rent_type 租售方式
     * 
     * @param string $is_lease 是否带租约
     * @param string $tel 联系电话
     * @param string $ownertel 业主电话
     * @param string $sj_images 实景图
     * @param string $sn_images 室内图
     * @param string $sw_images 室外图
     * @param string $area 地区朝向
     * @return void
     */
    public function add_shops_goods()
    {


        $params = $this->request->param();
        $fields = ['name',
                    'contacts',
                    'images',
                    'lc',
                    'cx',
                    'house_type',
                    'size',
                    'addr',
                    'public_status',
                    // 'now_status',//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
                    'zb_school',
                    'zb_hospital',
                    'zb_bus',
                    'zb_sc',
                    'rent_type',//租售方式
                    // '',
                    'tag_ids',
                    'ps',

                    'province',
                    'city',
                    'district',

                    'is_lease',//是否带租约
                    'tel',//联系电话
                    'ownertel',//业主电话
                    'area',//地区朝向
                    'sj_images',//实景图
                    'sn_images',//室内图
                    'sw_images',//室外图

                    'price'];



        $data = $this->get_field_arr($params,$fields,true);
        $data['now_status'] = '4';//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房

        $data['uid'] = $this->auth->id;
        $data['ltd_id'] = $this->get_me_ltd_id();
        $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//
        $res = Db::name($this->db)->where($data)->find();
        if($res){
            $this->error('已提交过');
        }



      

        
        $data['time'] = time();
        // $data['status_switch'] = 0;
        $res = Db::name($this->db)->insertGetId($data);
        if($res){
            $this->success('添加成功');
        }
    }


    /**
     * 编辑商铺房源🏛🧩
     * 
     * @param int $id 房源id
     * @param string $name 房源名
     * @param string $contacts 联系人
     * @param string $images 房源信息图
     * @param string $lc 楼层
     * @param string $cx 朝向
     * @param string $house_type 户型/类型
     * @param string $size 房源面积
     * @param string $addr 具体地址
     * @param string $public_status 公开显示:1=是,2=否
     * @param string $zb_school 周边学校
     * @param string $zb_hospital 周边医院
     * @param string $zb_bus 周边公交
     * @param string $zb_sc 周边市场
     * @param string $tag_ids 标签id
     * @param string $ps 备注
     * @param string $province 省
     * @param string $city 市
     * @param string $district 区
     * @param string $price 价格
     * @param string $rent_type 租售方式
     * 
     * @param string $is_lease 是否带租约
     * @param string $tel 联系电话
     * @param string $ownertel 业主电话
     * @param string $sj_images 实景图
     * @param string $sn_images 室内图
     * @param string $sw_images 室外图
     * @param string $area 地区朝向
     * @return void
     */
    public function edit_shops_goods($id)
    {

        $where['uid'] = $this->auth->id;
        $where['id'] = $id;
        $res = Db::name($this->db)->where($where)->find();
        if(!$res){
            $this->error('没有此房源');
        }


        $params = $this->request->param();
        $fields = ['name',
                    'contacts',
                    'images',
                    'lc',
                    'cx',
                    'house_type',
                    'size',
                    'addr',
                    'public_status',
                    // 'now_status',//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
                    'zb_school',
                    'zb_hospital',
                    'zb_bus',
                    'zb_sc',
                    'rent_type',//租售方式
                    // '',
                    'tag_ids',
                    'ps',

                    'province',
                    'city',
                    'district',

                    'is_lease',//是否带租约
                    'tel',//联系电话
                    'ownertel',//业主电话
                    'area',//地区朝向
                    'sj_images',//实景图
                    'sn_images',//室内图
                    'sw_images',//室外图

                    'price'];



        $data = $this->get_field_arr($params,$fields,true);
        // $data['now_status'] = '4';//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房

        // $data['uid'] = $this->auth->id;
        // $data['ltd_id'] = $this->get_me_ltd_id();
        // $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//
        // $res = Db::name($this->db)->where($data)->find();
        // if($res){
        //     $this->error('已提交过');
        // }



      

        
        // $data['time'] = time();
        // $data['status_switch'] = 0;
        $res = Db::name($this->db)->where($where)->update($data);
        if($res){
            $this->success('编辑成功');
        }
    }





    /**
     * 添加二手房源🏛
     * 
     * @param string $name 房源名
     * @param string $contacts 联系人
     * @param string $images 房源信息图
     * @param string $lc 楼层
     * @param string $cx 朝向
     * @param string $house_type 户型/类型
     * @param string $size 房源面积
     * @param string $addr 具体地址
     * @param string $public_status 公开显示:1=是,2=否
     * @param string $zb_school 周边学校
     * @param string $zb_hospital 周边医院
     * @param string $zb_bus 周边公交
     * @param string $zb_sc 周边市场
     * @param string $tag_ids 标签id
     * @param string $ps 备注
     * @param string $province 省
     * @param string $city 市
     * @param string $district 区
     * @param string $price 价格
     * @param string $house_years 房屋年代
     * @param string $house_year 房子年限（二手房）
     * 
     * @param string $room_data 楼栋号
     * @param string $zlc 总楼层
     * @param string $stairs_house 几梯几户
     * @param string $look_mode 已有钥匙、提前联系
     * @param string $tel 联系电话
     * @param string $ownertel 业主电话
     * @param string $core_main 核心卖点
     * @param string $owner_mentality 业主心态
     * @param string $property 产权信息
     * @param string $sj_images 实景图
     * @param string $sn_images 室内图
     * @param string $area 地区朝向
     * @return void
     */
    public function add_old_goods()
    {


        $params = $this->request->param();
        $fields = ['name',
                    'contacts',
                    'images',
                    'lc',
                    'cx',
                    'house_type',
                    'size',
                    'addr',
                    'public_status',
                    // 'now_status',//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
                    'zb_school',
                    'zb_hospital',
                    'zb_bus',
                    'zb_sc',
                    // 'rent_type',//租售方式
                    'house_years',
                    'house_year',
                    // '',
                    'tag_ids',
                    'ps',

                    'province',
                    'city',
                    'district',

                    'room_data',//楼栋号
                    'zlc',//总楼层
                    'stairs_house',//几梯几户
                    'look_mode',//已有钥匙、提前联系
                    'tel',//联系电话
                    'ownertel',//业主电话
                    'core_main',//核心卖点
                    'owner_mentality',//业主心态
                    'property',//产权信息
                    'area',//地区朝向
                    'sj_images',//实景图
                    'sn_images',//室内图



                    'price'];



        $data = $this->get_field_arr($params,$fields,true);
        $data['now_status'] = '6';//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
        
        $data['uid'] = $this->auth->id;
        $data['ltd_id'] = $this->get_me_ltd_id();
        $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//
        $res = Db::name($this->db)->where($data)->find();
        if($res){
            $this->error('已提交过');
        }



      

        
        $data['time'] = time();
        // $data['status_switch'] = 0;
        $res = Db::name($this->db)->insertGetId($data);
        if($res){
            $this->success('添加成功');
        }
    }



    /**
     * 编辑二手房源🏛🧩
     * @param int $id 房源id
     * @param string $name 房源名
     * @param string $contacts 联系人
     * @param string $images 房源信息图
     * @param string $lc 楼层
     * @param string $cx 朝向
     * @param string $house_type 户型/类型
     * @param string $size 房源面积
     * @param string $addr 具体地址
     * @param string $public_status 公开显示:1=是,2=否
     * @param string $zb_school 周边学校
     * @param string $zb_hospital 周边医院
     * @param string $zb_bus 周边公交
     * @param string $zb_sc 周边市场
     * @param string $tag_ids 标签id
     * @param string $ps 备注
     * @param string $province 省
     * @param string $city 市
     * @param string $district 区
     * @param string $price 价格
     * @param string $house_years 房屋年代
     * @param string $house_year 房子年限（二手房）
     * 
     * @param string $room_data 楼栋号
     * @param string $zlc 总楼层
     * @param string $stairs_house 几梯几户
     * @param string $look_mode 已有钥匙、提前联系
     * @param string $tel 联系电话
     * @param string $ownertel 业主电话
     * @param string $core_main 核心卖点
     * @param string $owner_mentality 业主心态
     * @param string $property 产权信息
     * @param string $sj_images 实景图
     * @param string $sn_images 室内图
     * @param string $area 地区朝向
     * @return void
     */
    public function edit_old_goods($id)
    {

        $where['uid'] = $this->auth->id;
        $where['id'] = $id;
        $res = Db::name($this->db)->where($where)->find();
        if(!$res){
            $this->error('没有此房源');
        }

        $params = $this->request->param();
        $fields = ['name',
                    'contacts',
                    'images',
                    'lc',
                    'cx',
                    'house_type',
                    'size',
                    'addr',
                    'public_status',
                    // 'now_status',//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
                    'zb_school',
                    'zb_hospital',
                    'zb_bus',
                    'zb_sc',
                    // 'rent_type',//租售方式
                    'house_years',
                    'house_year',
                    // '',
                    'tag_ids',
                    'ps',

                    'province',
                    'city',
                    'district',

                    'room_data',//楼栋号
                    'zlc',//总楼层
                    'stairs_house',//几梯几户
                    'look_mode',//已有钥匙、提前联系
                    'tel',//联系电话
                    'ownertel',//业主电话
                    'core_main',//核心卖点
                    'owner_mentality',//业主心态
                    'property',//产权信息
                    'area',//地区朝向
                    'sj_images',//实景图
                    'sn_images',//室内图



                    'price'];



        $data = $this->get_field_arr($params,$fields,true);
        // $data['now_status'] = '6';//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
        
        // $data['uid'] = $this->auth->id;
        // $data['ltd_id'] = $this->get_me_ltd_id();
        // $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//
        // $res = Db::name($this->db)->where($data)->find();
        // if($res){
        //     $this->error('已提交过');
        // }



      

        
        // $data['time'] = time();
        // $data['status_switch'] = 0;
        $res = Db::name($this->db)->where($where)->update($data);
        if($res){
            $this->success('修改成功');
        }
    }








    /**
     * 添加出租房源🏛
     * 
     * @param string $name 房源名
     * @param string $contacts 联系人
     * @param string $images 房源信息图
     * @param string $lc 楼层
     * @param string $cx 朝向
     * @param string $house_type 户型/类型
     * @param string $size 房源面积
     * @param string $addr 具体地址
     * @param string $public_status 公开显示:1=是,2=否
     * @param string $zb_school 周边学校
     * @param string $zb_hospital 周边医院
     * @param string $zb_bus 周边公交
     * @param string $zb_sc 周边市场
     * @param string $tag_ids 标签id
     * @param string $ps 备注
     * @param string $province 省
     * @param string $city 市
     * @param string $district 区
     * @param string $price 价格
     * @param string $house_years 房屋年代
     * @param string $house_year 房子年限（二手房）
     * @param string $rent_type 租售方式
     * @param string $de_kzf 可做饭
     * @param string $de_kt 空调
     * @param string $de_xyj 洗衣机
     * @param string $de_furniture 有无家具
     * @param string $de_bathroom 有无卫浴
     * @param string $de_tv 有无电视
     * @param string $de_wifi 有无wifi
     * 
     * @param string $tel 联系电话
     * @param string $ownertel 业主电话
     * @param string $sj_images 实景图
     * @param string $sn_images 室内图
     * @param string $area 地区朝向
     * @return void
     */
    public function add_rent_goods()
    {


        $params = $this->request->param();
        $fields = ['name',
                    'contacts',
                    'images',
                    'lc',
                    'cx',
                    'house_type',
                    'size',
                    'addr',
                    'public_status',
                    // 'now_status',//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
                    'zb_school',
                    'zb_hospital',
                    'zb_bus',
                    'zb_sc',
                    'rent_type',//租售方式
                    'house_years',
                    'house_year',
                    // '',
                    'tag_ids',
                    'ps',

                    'province',
                    'city',
                    'district',



                    'de_kzf',
                    'de_kt',
                    'de_xyj',
                    'de_furniture',
                    'de_bathroom',
                    'de_tv',
                    'de_wifi',
                    


                    'tel',//联系电话
                    'ownertel',//业主电话
                    'sj_images',//实景图
                    'sn_images',//室内图
                    'area',


                    'price'];



        $data = $this->get_field_arr($params,$fields,true);
        $data['now_status'] = '5';//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
        
        $data['uid'] = $this->auth->id;
        $data['ltd_id'] = $this->get_me_ltd_id();
        $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//
        $res = Db::name($this->db)->where($data)->find();
        if($res){
            $this->error('已提交过');
        }



      

        
        $data['time'] = time();
        // $data['status_switch'] = 0;
        $res = Db::name($this->db)->insertGetId($data);
        if($res){
            $this->success('添加成功');
        }
    }



    /**
     * 编辑出租房源🏛🧩
     * @param int $id 房源id
     * @param string $name 房源名
     * @param string $contacts 联系人
     * @param string $images 房源信息图
     * @param string $lc 楼层
     * @param string $cx 朝向
     * @param string $house_type 户型/类型
     * @param string $size 房源面积
     * @param string $addr 具体地址
     * @param string $public_status 公开显示:1=是,2=否
     * @param string $zb_school 周边学校
     * @param string $zb_hospital 周边医院
     * @param string $zb_bus 周边公交
     * @param string $zb_sc 周边市场
     * @param string $tag_ids 标签id
     * @param string $ps 备注
     * @param string $province 省
     * @param string $city 市
     * @param string $district 区
     * @param string $price 价格
     * @param string $house_years 房屋年代
     * @param string $house_year 房子年限（二手房）
     * @param string $rent_type 租售方式
     * @param string $de_kzf 可做饭
     * @param string $de_kt 空调
     * @param string $de_xyj 洗衣机
     * @param string $de_furniture 有无家具
     * @param string $de_bathroom 有无卫浴
     * @param string $de_tv 有无电视
     * @param string $de_wifi 有无wifi
     * 
     * @param string $tel 联系电话
     * @param string $ownertel 业主电话
     * @param string $sj_images 实景图
     * @param string $sn_images 室内图
     * @param string $area 地区朝向
     * @return void
     */
    public function edit_rent_goods($id)
    {

        $where['uid'] = $this->auth->id;
        $where['id'] = $id;
        $res = Db::name($this->db)->where($where)->find();
        if(!$res){
            $this->error('没有此房源');
        }

        $params = $this->request->param();
        $fields = ['name',
                    'contacts',
                    'images',
                    'lc',
                    'cx',
                    'house_type',
                    'size',
                    'addr',
                    'public_status',
                    // 'now_status',//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
                    'zb_school',
                    'zb_hospital',
                    'zb_bus',
                    'zb_sc',
                    'rent_type',//租售方式
                    'house_years',
                    'house_year',
                    // '',
                    'tag_ids',
                    'ps',

                    'province',
                    'city',
                    'district',



                    'de_kzf',
                    'de_kt',
                    'de_xyj',
                    'de_furniture',
                    'de_bathroom',
                    'de_tv',
                    'de_wifi',
                    


                    'tel',//联系电话
                    'ownertel',//业主电话
                    'sj_images',//实景图
                    'sn_images',//室内图
                    'area',


                    'price'];



        $data = $this->get_field_arr($params,$fields,true);
        // $data['now_status'] = '5';//现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
        
        // $data['ltd_id'] = $this->get_me_ltd_id();
        // $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//
      
        // $data['time'] = time();
        // $data['status_switch'] = 0;
        $res = Db::name($this->db)->where($where)->update($data);
        if($res){
            $this->success('编辑成功');
        }
    }



    /**
     * 获取我的房源列表
     * @param int $page 1
     * @param int $limit 10
     * @param string $now_status 现房:1=现房,2=准现房,3=新房,4=商铺,5=租房,6=二手房
     * @return void
     */
    public function get_me_goods_list($now_status = null,$page=1,$limit=10)
    {
        $where['uid'] = $this->auth->id;
        if($now_status){
            $where['now_status'] = ['=',$now_status];
        }
        $list = Db::name('goods')
                    ->where($where)
                    ->page($page,$limit)
                    ->select();
        foreach ($list as $key => &$val) {
            $val['tag'] = Db::name('tag')->where('id','in',$val['tag_ids'])->column('title');
        }
                    
        $this->success('one',$list);
    }


    // /**
    //  * 申请成为公司兼职人员🧑🏻‍🚒
    //  * 
    //  * @param string $tel 电话
    //  * @param string $ltd_id 公司id
    //  * @param string $name 姓名
    //  * @param string $wechat 微信号
    //  * @param string $email 邮箱
    //  * @param string $ps 备注
    //  * @return void
    //  */
    // public function apply_ltder_job()
    // {
    //     $data['uid'] = $this->auth->id;
    //     // $data['pid'] = $this->request->param('pid','');    
    //     $res = Db::name($this->db)->where($data)->find();
    //     if($res){
    //         $this->error('已提交过');
    //     }

    //     $data['name'] = $this->request->param('name','');
    //     $data['wechat'] = $this->request->param('wechat','');
    //     $data['email'] = $this->request->param('email','');
    //     $data['ps'] = $this->request->param('ps','');   
    //     $data['tel'] = $this->request->param('tel');

    //     $data['ltd_id'] = $this->request->param('ltd_id');
    //     $data['admin_id'] = $this->GetAdminIdByLtdId($data['ltd_id']);//

    //     $data['role_status'] = '3';   //角色:1=主管,2=员工,3=兼职人员
        
    //     $data['time'] = time();
    //     $data['status_switch'] = 0;
    //     $res = Db::name($this->db)->insertGetId($data);
    //     if($res){
    //         $this->success('申请成功');
    //     }
    // }




}